import request from "@/utils/request";

const WXKF_BASE_URL = "/api/v1/wxKfs";

const WxKfAPI = {
  /** 获取客户档案分页数据 */
  getPage(queryParams?: WxKfPageQuery) {
    return request<any, PageResult<WxKfPageVO[]>>({
      url: `${WXKF_BASE_URL}/page`,
      method: "get",
      params: queryParams,
    });
  },
  /**
   * 获取客户档案表单数据
   *
   * @param id 客户档案ID
   * @returns 客户档案表单数据
   */
  getFormData(id: number) {
    return request<any, WxKfForm>({
      url: `${WXKF_BASE_URL}/${id}/form`,
      method: "get",
    });
  },

  /** 添加客户档案*/
  add(data: WxKfForm) {
    return request({
      url: `${WXKF_BASE_URL}`,
      method: "post",
      data: data,
    });
  },

  /**
   * 更新客户档案
   *
   * @param id 客户档案ID
   * @param data 客户档案表单数据
   */
  update(id: number, data: WxKfForm) {
    return request({
      url: `${WXKF_BASE_URL}/${id}`,
      method: "put",
      data: data,
    });
  },

  /**
   * 批量删除客户档案，多个以英文逗号(,)分割
   *
   * @param ids 客户档案ID字符串，多个以英文逗号(,)分割
   */
  deleteByIds(ids: string) {
    return request({
      url: `${WXKF_BASE_URL}/${ids}`,
      method: "delete",
    });
  },
};

export default WxKfAPI;

/** 客户档案分页查询参数 */
export interface WxKfPageQuery extends PageQuery {
  /** 姓名 */
  xm?: string;
  /** 手机 */
  tel?: string;
  /** 身份证号 */
  sfz?: string;
  /** QQ */
  qq?: string;
  /** 微信 */
  wx?: string;
  /** 所属形象设计师 */
  sjs?: string;
  /** 设计科室 */
  sjks?: string;
  /** 初诊时间 */
  czrq?: [string, string];
  /** 设计时间 */
  sjsj?: [string, string];
}

/** 客户档案表单对象 */
export interface WxKfForm {
  /** 主键 */
  id?: number;
  /** 定金 */
  dj?: string;
  /** 客户照片 */
  zp?: string;
  /** 客户卡号 */
  kh?: string;
  /** 客户所属机构 */
  kfjg?: string;
  /** 姓名 */
  xm?: string;
  /** 性别 */
  xb?: string;
  /** 手机 */
  tel?: string;
  /** 联系电话 */
  tel1?: string;
  /** 生日 */
  sr?: string;
  /** 年龄 */
  nl?: string;
  /** 出生日期 */
  csrq?: string;
  /** 客户状态 */
  kfzt?: string;
  /** 职业 */
  zy?: string;
  /** 初诊时间 */
  czrq?: Date;
  /** 病案号 */
  bah?: string;
  /** 身份证号 */
  sfz?: string;
  /** 现住址 */
  xzz?: string;
  /** 客户来源区域 */
  khly?: string;
  /** 期望回访方式 */
  hffs?: string;
  /** 接受回访 */
  jshf?: string;
  /** 接受短信 */
  jsdx?: string;
  /** 收入情况 */
  srqk?: string;
  /** QQ */
  qq?: string;
  /** 微信 */
  wx?: string;
  /** 开发渠道 */
  kfqd?: string;
  /** 了解途径 */
  ljtj?: string;
  /** 客户爱好 */
  khxh?: string;
  /** 开发人员 */
  kefury?: string;
  /** 所属形象设计师 */
  sjs?: string;
  /** 客服人员 */
  kfry?: string;
  /** 介绍人 */
  jsr?: string;
  /** 备注 */
  bz?: string;
  /** 联系人信息 */
  lxrxx?: string;
  /** 过敏史 */
  gms?: string;
  /** 门诊号 */
  mzh?: string;
  /** 就诊类型 */
  jzlx?: string;
  /** 设计时间 */
  sjsj?: Date;
  /** 设计科室 */
  sjks?: string;
  /** 形象设计师 */
  xxsjs?: string;
  /** 客户关心问题 */
  gxwt?: string;
  /** 客户意向1 */
  kfyx1?: string;
  /** 客户意向2 */
  kfyx2?: string;
  /** 客户意向3 */
  kfyx3?: string;
  /** 就诊医生 */
  jzys?: string;
  /** 助诊医生 */
  zzys?: string;
  /** 未成交原因 */
  wcjyy?: string;
  /** 设计备注 */
  sjbz?: string;
  fymx?: string;
  djll?: string;
}

/** 客户档案分页对象 */
export interface WxKfPageVO {
  /** 主键 */
  id?: number;
  /** 定金 */
  dj?: string;
  /** 客户照片 */
  zp?: string;
  /** 客户卡号 */
  kh?: string;
  /** 客户所属机构 */
  kfjg?: string;
  /** 姓名 */
  xm?: string;
  /** 性别 */
  xb?: string;
  /** 手机 */
  tel?: string;
  /** 联系电话 */
  tel1?: string;
  /** 生日 */
  sr?: string;
  /** 年龄 */
  nl?: string;
  /** 出生日期 */
  csrq?: string;
  /** 客户状态 */
  kfzt?: string;
  /** 职业 */
  zy?: string;
  /** 初诊时间 */
  czrq?: Date;
  /** 病案号 */
  bah?: string;
  /** 身份证号 */
  sfz?: string;
  /** 现住址 */
  xzz?: string;
  /** 客户来源区域 */
  khly?: string;
  /** 期望回访方式 */
  hffs?: string;
  /** 接受回访 */
  jshf?: string;
  /** 接受短信 */
  jsdx?: string;
  /** 收入情况 */
  srqk?: string;
  /** QQ */
  qq?: string;
  /** 微信 */
  wx?: string;
  /** 开发渠道 */
  kfqd?: string;
  /** 了解途径 */
  ljtj?: string;
  /** 客户爱好 */
  khxh?: string;
  /** 开发人员 */
  kefury?: string;
  /** 所属形象设计师 */
  sjs?: string;
  /** 客服人员 */
  kfry?: string;
  /** 介绍人 */
  jsr?: string;
  /** 备注 */
  bz?: string;
  /** 联系人信息 */
  lxrxx?: string;
  /** 过敏史 */
  gms?: string;
  /** 门诊号 */
  mzh?: string;
  /** 就诊类型 */
  jzlx?: string;
  /** 设计时间 */
  sjsj?: Date;
  /** 设计科室 */
  sjks?: string;
  /** 形象设计师 */
  xxsjs?: string;
  /** 客户关心问题 */
  gxwt?: string;
  /** 客户意向1 */
  kfyx1?: string;
  /** 客户意向2 */
  kfyx2?: string;
  /** 客户意向3 */
  kfyx3?: string;
  /** 就诊医生 */
  jzys?: string;
  /** 助诊医生 */
  zzys?: string;
  /** 未成交原因 */
  wcjyy?: string;
  /** 设计备注 */
  sjbz?: string;
  fymx?: string;
  djll?: string;
}
